#ifndef __GEEK_COMMANDER_VIRTDIR_H_INCLUDED_E415A459_D8BD_4c99_8476_9CB70EBCB7DD__
#define __GEEK_COMMANDER_VIRTDIR_H_INCLUDED_E415A459_D8BD_4c99_8476_9CB70EBCB7DD__

struct geek_virtdir_processor;

struct geek_virtdir
{
    typedef void (*destroy_fn_t)(geek_virtdir *);
    typedef bool (*navigate_fn_t)(geek_virtdir *, const wchar_t *path);

    destroy_fn_t destroy_fn;
    navigate_fn_t navigate_fn;

    geek_virtdir_processor *processor;
};

struct geek_virtdir_blob
{
    geek_virtdir virtdir;
    char blob[2048];
};

#endif // __GEEK_COMMANDER_VIRTDIR_H_INCLUDED_E415A459_D8BD_4c99_8476_9CB70EBCB7DD__
